﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAL
{
   public partial class UILocalizacion
    {
       public  void  SetAdd(dbGestionDataContext _db,
                            string descripcion,
                            int idEtapa,
                            string comentario,
                            decimal area)
       {

           this.descripcion = descripcion;
           this.idEtapa = idEtapa;
           this.area = area;
           this.comentario = comentario;
           _db.UILocalizacions.InsertOnSubmit(this);

          
       }


       public void SetUpdate(dbGestionDataContext _db,
                            string descripcion,
                            decimal area,
                            string comentario,
                            int idEtapa,
                            int? idArchivo)
       {

           this.descripcion = descripcion;
           this.area = area;
           this.comentario = comentario;
           this.idEtapa = idEtapa;
           this.idArchivo = idArchivo;
           
           


       }


       public int getidAnterior(dbGestionDataContext _db, int idinternal, int idEtapa)
       {
           int intAnterior = 0;

           int c = _db.UILocalizacions.Where(p => p.idInternal < idinternal & p.idEtapa== idEtapa).Count();
           if (c == 0)
           {
               throw new Exception("No existe Registros");
           }
           else
           {
               intAnterior = _db.UILocalizacions.Where(a => a.idInternal < idinternal & a.idEtapa == idEtapa).Max(a => a.idInternal);

           }


           return intAnterior;

       }
       public int getidSiguiente(dbGestionDataContext _db, int idinternal, int idEtapa)
       {
           int intSiguiente = 0;

           //revisar la sentencia generada

           int c = _db.UILocalizacions.Where(p => p.idInternal > idinternal & p.idEtapa == idEtapa).Count();

           if (c == 0)
           {
               throw new Exception("No existe Registros");
           }
           else
           {
               intSiguiente = _db.UILocalizacions.Where(p => p.idInternal > idinternal & p.idEtapa== idEtapa).Min(a => a.idInternal);
           }

           return intSiguiente;
       }


    }
}
